#ifndef _E_EVENT_MANAGER_H_
#define _E_EVENT_MANAGER_H_

#include "EEventShape.h"
#include "EGameObject.h"

#include "eH.h"
namespace engine
{

class EPhScene;

class EEventManager : public EGameObject
{
  typedef vector<EEventShape*> EEventShapeVector;
  EEventShapeVector       m_vecShapes;
  EPhScene*               m_pPhScene;
public:
  EEventManager();
  virtual ~EEventManager();

  void    addEventShape    (EEventShape& shape);
  /// \warning not tested yet
  void    removeEventShape (EEventShape& shape);

  bool    update            ( const EGameTime& time ) { return true; }
  bool    startGame         ( EPhScene& phScene );
  bool    updateGame        ( const EGameTime& time );
  bool    endGame           ( );
};

} // end namespace

#endif